#include <iostream>
#include <vector>
#include <sys/types.h>
#include <unistd.h>
using namespace std;

const int num = 10;


void SubProcessRun()
{
	while(true)
	{
		cout << "I am sub process, pid: " << getpid() << " ,ppid: " << getppid() << std::endl;
		sleep(1);
	}
}

int main()
{
	vector<pid_t> allchild;
	for(int i = 0;i < num; i++)
	{
		pid_t id = fork();
		if(id == 0)
		{
			//子进程
			SubProcessRun();
		}
		//这里谁执行? 父进程
		allchild.push_back(id);
	}
	//父进程
	cout << "我的所有的孩子是: ";
	for(auto child: allchild)
	{
		cout << child << " ";
	}
	cout << endl;

	while(true)
	{
		cout << "我是父进程, pid: " << getpid() << endl;
		sleep(1);
	}

	return 0;
}

